import {
    insert,query,callFunction,del_mult, _,del,update
} from './index'

// 创建组件
export const insertAssembly_sort = (data) => {
    return insert({
        table: 'assembly_sort',
        data
    })
}
// 查询组件
export const queryAssembly_sort = async () => {
    const res = await callFunction('query_assembly_sort')
    return res.result
}

// 删除组件
export const deleteAssembly_sort = (_id) => {
    return del({
        table: 'assembly_sort',
        _id
    })
}



// 版本是否已存在
export const isExistVersion = async (assembly_sort_id, version) => {
    const result = await query({
        table: 'assembly',
        data: {
            assembly_sort_id,
            version
        }
    })
    return result.length > 0
}


// 查询版本
export const queryAssembly = (assembly_sort_id) => {
    return query({
        table: 'assembly',
        data: {
            assembly_sort_id
        },
        sort: {
            sort: -1
        }
    })
}


// 删除组件版本文件
export const deleteAssemblyFile = (dir) => {
    callFunction('delete_assembly', {
        dir
    })
}

// 更新组件最新版本
export const updateAssembly_sort_version = async (_id) => {
    const result = await queryAssembly(_id)
    const version = result.length > 0 ?result[0].version : ''
    console.log(123123,result,  _id, version)
    await update({
        table: "assembly_sort",
        _id,
        data: {
            version
        }
    })
}
// 添加版本
export const insertAssembly = async (data) => {
    data.version.split('.').reduce((prev, cur, index) => {

    })
    await  insert({
        table: 'assembly',
        data: {
            ...data,
            sort: parseFloat(data.version.replace(/\./g, ''))
        }
    })
    await updateAssembly_sort_version(data.assembly_sort_id)
    return
}
// 删除版本
export const delAssembly = async (_id,arr) => {
    await del_mult({
        table: 'assembly',
        data: {
            version: _.in(arr)
        }
    })
    updateAssembly_sort_version(_id)
    return
}
// 组件分类
// 添加版本
export const insertAssemblyClassify = (data) => {
    return insert({
        table: 'assembly_classify',
        data
    })
}
// 查询版本
export const queryAssemblyClassify = () => {
    return query({
        table: 'assembly_classify'
    })
}